החמישי לספטמבר, תשע בבוקר, התרנגולים מתעוררים וגם אתם, בקושי. עדיין חצי חולמים חצי ערים חושבים איך לקחת מטוס לשדה התעופה בהרצליה, משם לקפוץ מעל הגדר אל המרכז הבינתחומי והכנס השנתי של Open Web Application Security Project . אמנם את דברי הפתיחה באמת פספסנו, היו עוד כמה דברים מעניינים בהמשך:
אחרי שניחשתם את הססמה שצריך להגיד למאבטח בכניסה כדי להימנע מכל מיני בדיקות מיותרות ואחרי הליכה של עוד 3 דקות במבוכי המרכז הבינתחומי — הגעתם לבית ספר למקצועות המחשב של אלי ארזי.
attackers vs defenders
בכניסה חיכו לכם שולחנות הרשמה ושני קבוצות וויזואלית עיקריות.
הראשונים היו סיס-אדמינים עם זקן, מכנס קצר וכפכפים
והשניים היו בעלי טייטלים רציניים, ראשי צוותים, מנהלי פיתוח ו-cto למיניהם, מגולחים ובחולצות כפתורים
כנראה האחרונים התנגדו לאיזה מלחמת פיינטבול בגינה והמארגנים פשוט הפרידו את ההרצאות לשני אולמות שונים. באחד נכחו כל אותם אלה שרצו לפרוץ ולתקוף ובאולם השני אלה שרצו להגן ולעזור. וכמובן שבמהלך היום החלפתם את התפקיד שלכם לפחות 5 פעמים בשביל להגיע להרצאות היותר מעניינות.
חוץ מאלה היו גם כמה לובשי מדים, שאת חלקם זיהיתם בתור חברים מהיחידה,
את החלק חלקם רק לפי התג על הכתף, אם בכלל.
בלובי ישבו להם נציגי המון חברות בתחום הסקיוריטי שהעמיסו לכם תיקים עם לוגואים, מחברות ועטים או סוכריות מנטה מטריפות ביחד עם טופסי ראיונות עבודה. אחת החברות אפילו הגרילה טאבלת בין כל מי שמילה טופס כלשהו ועם סיכוי של אחד מתוך 300 כמעט זכיתם :)
הקבוצה האחרונה, התיירים, כללה משהו כמו בן אדם אחד בחולצה וורודה, מכנס הוואי ומשקפי שמש. אני.
הטריק הזה תמיד עובד. תמיד כולם מסתכלים עליכם, זוכרים אותכם ואם במהלך ההרצאות אתם שואלים שאלות, כולם גם מרגישים כאילו הם מכירים אותכם מזמן .
זה טוב להפסקות קפה שאחר-כך. כשמגיעה הזמן באים לדבר אתכם כי אתם הבן אדם הכיפי הזה שאפשר לדבר איתו, שנראה גם חכם וגם מגניב ולא כמו דיפלומט כזה שצריך לקבוע תור אליו. לדעתי הטריק הזה עובד על גיל 30 ואחר-כך זה נהיה מוזר.
באופן כללי זכרו פטנט לכנסים הבאים: מי ששואל יותר שאלות נראה חכם יותר. גם אם השאלות מפגרות, כמו "איפה אפשר להוריד את זה" ו-"כמה זה עולה".
OWASP Top 10 Hebrew Edition
זה. זה מה שפספסתם. היו פקקים במטוס. אבל לא נורא. אפשר לקרוא את ה English Edition בגוגל,
כי לפי הזמן, ב 2.5 דקות לכל נושא אפשר רק להקריא בכל רם כותרות. ואם עדיין לא שמענו על xss, sql injection, csrf או דומיהם - באמת כדאי לקרוא על זה.
The Diviner – Digital Clairvoyance: Getting an Insight
Into Server Code & Memory Using Blackbox Techniques
החברה הכריזמטיים מחברת Hacktics הציגו לכם תכנה גאונית. המטרה שלה הייתה לנסות לבנות את קוד המקור של האתר שלכם בדיוק של 60% על ידי כלים חיצוניים. הדרך מאוד פשוטה לכאורה:
אם יש לכם עמוד שמקבל פרמטר מהכתובת - אפשר להניח שיש לכם שורה של $x = $_GET['y'];
ואם אתם מדפיסים למסך את התוכן הזה - אז כנראה שיש גם שורה שעושה echo $x;
אם התוכן הזה מופיע אחר כך בעמוד אחר - אז יש לכם גם שורה של שמירה בסשן. וכנראה אפשר לשער שיש שורה של שליפה של משהו מהמסד. שזה אומר שיש גם שורה של חיבור למסד ושורה של בחירת מסד ואולי אפילו שורה של קריאה מקונפיג.
המטרה של כל זה הייתה לעזור ל pen testers לדעת איפה לחפש בעיות. אם יש בעמוד א' שורה של גישה למסד, אז הפן טסטר צריך לחפש בעמוד הזה sql injection. ואם אין בעמוד משהו כזה, אין טעם לבזבז את הזמן שלו בניחושים.
המטרה השניה הייית לאפשר לקשר בין קלט בדף לבין חור בדף אחר. אם למשל בדף 4 כתבנו סקריפט בתור שם משתמש וזה נשמר בסשן, רוב הסיכויים הבודק אף פעם לא יגלה שבדף 59 יש xss בעקבות הערך הזה.
מצד שני לתכנה יש גם חסרונות. זמן עבודה אקספוננציאלי נוראי. אם יש לכם שני דפים שבכל אחד מהם יש שני פרמטרים אפשריים להזנה וצריך לבדוק אם הדפים משפיעים אחד על השני, זמן הבדיקה יהיה, במילים עדינות, גדול כי צריך לבדוק אם פרמטר א' נכון ופרמטר ב' זדוני בצירוף עם פרמטר ג' זדוני וד' לגיטימי עושים משהו.
שנית, לא ברור למה בכלל לנסות לנחש את הקוד מאחורה אם אפשר פשוט לקרוא אותו.
הרי הכלי "מיועד" לבדיקות פנימיות של החברה על הקוד של עצמה. זה אומר שהחברה יודעת יופי איפה יש גישה למסד ואיפה אין, ולעשות קוד אנאליז בשביל לראות איזה ערכים בסשן עוברים בין עמוד 4 לעמוד 59 יהיה הרבה יותר קל וזול.
אבל הרעיון בהחלט מעניין. אפשר להוריד את התוכנה ואת קוד המקור שלה, למרות שכרגע היא יותר מיועדת לשרתים שמריצים asp ו java. תמיכה ב PHP ו .net עדיין בתכנון.
I>S+D! – Integrated Application Security Testing (IAST),
Beyond SAST/DAST
מארגן הכנס סיפר על זה, שאפשר להתקין בשרת כלי של החברה שלו, שינתח את הזיכרון של השרת ושל מסד הנתונים ויבדוק שלא מגיעות לשם מחרוזות ערמומיות, שנראות כמו SqlInjection או XSS בעקבות קלט מפחיד שהתכנה תנסה לייצר בעצמה.
אם משהו לא ילך כמו שצריך, התכנה אפילו מבטיחה בריפלקשן להוציא את שורות הקוד שאחראיות לבעיה ואפילו יותר מזה, היא מוכנה לספק לבודק מידע על ה-coverage. איזה אחוז מהקוד נבדק על קלטים משונים.
חבל שכרגע כל זה מתאים יופי רק ל sql server ו .net
אחרי ששאלתם אותו מה יש לו להציעה ל-PHP הוא רמז שפעם ראה איזה ספריה של PHP שעושה משהו דומה אבל כמובן שהוא לא זוכר את שמה. גם בין הפרויקטים של סבסטיאן ברגמן לא מצאתם שום דבר דומה, ככה שאתם עדיין בשאלה לגבי מה זה יכל להיות והבטחתם לעצמכם שאם תמצאו - תתנו לכולם לדעת.
Zip It! – Owning Archived File Uploads
אלכס מ IBM צחק קצת על החברה שלו ואחר כך על כל מי שישב באודיטוריום. באמת we got owned.
חוץ ממפתחי PHP כמובן.
אלכס סיפר על מבנה של קבצי זיפ ועל זה שארכיון זיפ שומר את הנתיב של הקובץ המקורי בפנים. כל זה כדי לשמר את היררכיית התיקיות אחרי החילוץ של הארכיון. זה אומר שעם הכנסתם לארכיון תיקיה A שבתוכה יש תיקיה B ובתוכה קובץ c.php , הארכיון ישמור את הנתיב בתור ./a/b/c.php .
אחרי זה אלכס פתח את הארכיון עם עורך hex ושינה את הרשומה של התיב להיות ../../../c.php.
כמובן שמי שאחר-כך כך הוציא את הקבצים מהארכיון קיבל קובץ חדש בתיקיית ה webroot עם קוד שאפשר להפעיל מבחוץ.
לפחות זה היה יותר אקטואלי למפתחי java ו .net או למי שעדיין לא שדרג את גרסת ה php שלו ומשתמש באיזה קוד שהוריד מהאינטרנט לפתיחת ארכיונים, במקום לעשות כמו שאנחנו מלמדים לפתוח ארכיוני זיפ.
אחרי זה הוא גם הראה איך הוא מכניס לקובץ זיפ symlink ומי שמשתמש בשורת הפקודה בשביל לפתוח את הארכיון - מקבל בראש על העצלנות :)
Advanced Pen-Testing of iPhone Applications
תמיר, בחור מצחיק עליז ואחרי גיל 40 סיפר איך לכפכף אפליקציית אייפון באמצעות הכלי החדש שלו iNalyzer שמאפשר להתחבר מהמחשב אל המכשיר ופשוט להפעיל את המטודות של האפליקציה מתוך הטלפון עצמו. כמו שאתם יכולים לפתוח עכשיו את קונסול הJS ולהפעיל פה כמה מטודות באתר, ככה הוא עשה לאפליקציות אייפון.
נשמע לכם לא כזה מגניב בהתחלה, לפחות עד הרגע שבו הוא פותח אפליקציה עם איזה מסך הזדהות, מתחבר למכשיר, מפעיל מטודה בשם NSGoToNextScreen ומסך ההזדהות נעלם ואנחנו בפנים. אבל זה לא הכל. אחרי זה הוא משנה כמה משתנים ל "התשלום התקבל בהצלחה" ועכשיו הוא יכול לשחק בפיצ'רים היקרים.
ועכשיו כשאתם כבר מזילים ריר ומתכוונים לפרוץ את אנגרי-ברדס מגיעה גולת הכותרת. הוא אומר שהכלי הזה אופן סורס וiNalyzer ניתן להורדה בחינם באתר שלהם. אמנם עדיין כתוב שהוא coming soon.
תמיר כמובן מבטיח שהוא יסיים את ההרצאה, יקפוץ לשירותים ואז יעדכן את האתר. הוא באמת עושה את זה, אבל במקום התכנה מופיעה שם הצעה להשאיר את הפרטים ולקבל מייל כשמשהו קורה.
Application Counter Attack
זיו, מרצה עם קול יותר מונוטוני מהמורה שלכם להיסטוריה, הצליח לשמור עליכם בתור הקהל רק בזכות הרעיון המעניין שדחף. הוא הציעה לנצל את החיבור עם התוקף של השרת שלכם לתקיפה חזרה, או להגנה אקטיבית, או לאיך שתרצו לקרוא לזה אחרי דיון בן 10 דקות אם זה בכל זאת התקפה או הגנה אקטיבית, או פינג-פונג גרסת ddos.
אחד הבונוסים של פרוטוקול tcp/ip הוא האפשרות של הפאקטים להודיע למכונה הנגדית כמה בייטים המכונה השולחת מוכנה לקבל בתשובה לפאקט הזה על ידי הדר בשם window size.
זיו הציעה לענות לתוקפים בפאקט עם window size = 0 ככה שהמכונה של התוקף תחליט שהשרת לא מוכן לקבל כרגע תשובה ותחכה עם קונקשן פתוח בצד שלה. מה שיקרה מתוך הסיפור הזה הוא שהקונקשנים הפתוחים יהיו תקועים במחשב של התוקף והשרת מצידו יתעלם מהם לגמרי. win win ?
בנוסף הוא הראה סלייד שלם של כל מיני דרכים לדפוק את הקונקשן, כמו לענות עם מספרי פאקטים לא לפי הסדר, לשלוח תשובת ack במקומות לא מתאימים ושוב פעם בסדר שונה וכל מיני שטויות אחרות. לכם נשאר לחכות שכל זה ייצא בתור פלאגין ל nginx, ולבוטנטים נשאר להוריד סלייד כזה ולהוסיף בקוד שלהם התעלמות מה- window size
My Authentication Album:
Adaptive Image-Based Login Mechanism
רונן מאוניברסיטת בר אילן הראה לכם כמה תמונות. "תזכרו חמש" הוא אמר.
מעולה. עכשיו אם שכחתם ססמה, תוכלו לשחזרה על ידי זה, שתבחרו את החמש תמונות שלכם מתוך ה30 שהיו ובשביל שלא תשכחו אותם בין ההרשמה לבין החצי שנה אחר-כך כשתשכחו את הסיסמה - רונן מציעה בכל הזדהות לאתר קודם למלא שם משתמש, סיסמה ואז לבחור את אחת התמונות שלכם מתוך 5 תמונות שיוצגו במסך הכניסה. ככה יושג אפקט ה learing.
לא שמתי לב אם אתם הייתם בחצי האודיטוריום שלא הבין למה שבן אדם יזכור חמש תמונות מכל אתר שבו רשום, והרבה תמונות אבסטרקטיות בסה"כ. או בחצי שלא הבין מה הבעיה חמש פעמים ללחוץ שכחתי סיסמה ולראות איזה תמונות תמיד מופיעות ואיזה תמונות מתחלפות. או שהייתם בחצי שלא הבין איפה היום צריך לכתוב שם משתמש וססמה אם בכל מקום זוכרים אותנו אוטומטית או שיש הזדהות עם פייסבוק.
ככה שבממוצע כל אחד לא הבין לפחות שני דברים בדרך שהוצעה בתור שחזור סיסמה.
חוץ מזה שכמובן הנחת היסוד היית שפורצים לכם למייל, בגלל זה - מייל לא אופציה.
The New art of WAR & PEACE- a REAL FANTASY
סופר וכותב ופשוט בחור משכיל, מחבר הספר Babel Minute Zero ודובר בכנס Ted
נתן את ההרצאה הכי משונה שראיתם.
ספרו מדבר על השפעות גלובליות של מחשבים ואבטחה על מעמד הכוחות בעולם, על האקונומיקה ועל הסדר העולמי. על וירוס ה-stuxnet שהוא מנסה לייחס לכל מיני גופים, על כמה כסף עולה לארה"ב שעה של ניתוק רמזורים בקליפורניה וכמה אנשים יאבדו חיים אחרי 50 שעות בלי חשמל ב west coast.
בהרצאה הוא דיבר על הנושאים האלה בתמצות, אבל..
תוך כדי הקראה מדף, בליעה של מילים שאפילו לא ידעתם שיש בשפה האנגלית ומדי פעם לשריקות מיקרופון צורמות. אבל בטוח הבנתם את השורה התחתונה. כל חור באפליקציה שאתם משאירים עולה הרבה מאוד כסף, משאבים וחיים. אפילו כשאתם מפתחים עמוד "צור קשר".
P.S. בשביל להימנע מבעיות אבטחה רחוקי לכת תוכלו להצטרף לאיגוד ה-owasp
תמורת 50 דולר שנתיים דרך אתר האינטרנט של owasp
ותמיד להישאר בעניינים בכל הקשור לאבטחת מידע.
תגובות לכתבה:
נשמע מאוד מעניין. מודה לך על השיתוף. :)
תודה על התגובה :)
תודה רבה !
תודה על התגובה שלמה :)
תודה על השיתוף נשמע מעניין מאוד!
באמת היה מעניין :) שנה הבאה תגיעה
"לא ברור למה בכלל לנסות לנחש את הקוד מאחורה אם אפשר פשוט לקרוא אותו.
הרי הכלי "מיועד" לבדיקות פנימיות של החברה על הקוד של עצמה. זה אומר שהחברה יודעת יופי איפה יש גישה למסד ואיפה אין, ולעשות קוד אנאליז בשביל לראות איזה ערכים בסשן עוברים בין עמוד 4 לעמוד 59 יהיה הרבה יותר קל וזול."
פספסת את הנקודה, הכלי מיועד לשרת pentester. העבודה מוגבלת בזמן תמיד, ככה זה, וכדי לייעל אותה יש להשתמש בכמה שיותר מודיעין, זה כלי שיכול לתת אינסייט נוסף למאמצים של הבודק למצוא ממצאים מעניינים.
ב' - הכלי מיועד כמובן לבדיקות black-box (תוקף בלי ידע פנימי על המערכת) ולא כאלה שיש לך גישה לקוד המקור של הלקוח.
די הייתי מעדיף לתת ל pentester שלי מידע מדויק שנובע מאנאליזה סטטאטית של קוד
לא מתוך השערה לגבי המבנה שלו, בצורת דיוק הרבה יותר גבוה ואמינה יותר מאשר השערות על המבנה.
לאחר שהפן-טסטר יקבל את המידע היותר מדויק לגבי איפה ומה כדאי לבדוק - שימשיך בבדיקות black-box, כמו במקרה הזה. ככה שההבדל הוא רק בטכניקת איסוף המידע, שנראית לי פחות אפקטיבית ל"בדיקות", אבל די מעניינת בשביל לעשות משהו "לא נחמד".